今天來介紹一下在Model內常用的參數與資料表查詢功能:
在前面範例的程式碼有介紹與使用一些用法了,這裡再整理一下指令參數:
---------------<範例參數>---------------------
變數名稱:Input
資料表名稱:DataBase
---------------<資料表格式>-------------------
班級:class = models.CharField(max_length=10)
姓名:name = models.CharField(max_length=10)
座號:number = models.IntegerField()
---------------<資料表筆數>-------------------
班級 姓名 座號
一年三班 王勝利 11
二年六班 林順立 21
三年一班 陳聰明 21
-----------------<all()>--------------------
#當我們查詢資料表中的所有資料可以使用all().
Input = DataBase.objects.all()
#輸出資料表中所有資料。
----------------<filter()>------------------
#當我們查詢資料表時可以添加filter()回傳符合篩選條件的資料。
Input = DataBase.objects.filter(number = 11)
#輸出座號為11號的那筆資料。
---------------<exclude()>------------------
#或是添加exclude()回傳不符合篩選條件的資料。
Input = DataBase.oblects.exclude(name = "王勝利")
#輸出姓名為王勝利"以外"的資料。
-----------<filter().exclude()>-------------
#filter()跟exclude()能同時作為篩選條件來使用。
Input = DataBase.objects.filter(number = 21).exclude(class = "二年六班")
#輸出座號為21號與班級不包括二年六班的資料。
-----------------<get()>--------------------
#當我們要獲取資料表中的單筆資料可以用get().
Input = DataBase.objects.get(class = "三年一班")
#輸出班級為三年一班的這筆資料。
[注意]get()用法僅能抓取一筆資料時使用,
若超過一筆或資料表中沒有這筆資料會導致Django停止服務(報錯)。
------------------<[:]>---------------------
#另外還有LIMIT與OFFSET的查詢額外功能[:](數字從0開始算)。
Input = DataBase.objects.all()[:1]
#輸出前一筆資料。
Input = DataBase.objects.all()[0:2]
#輸出第一筆~第三筆資料。
Input = DataBase.objects.all()[2]
#輸出第三筆資料。
----------------<order_by>------------------
<order_by>
#將獲取的資料表排序的功能。
Input = DataBase.objects.order_by('number')
#輸出座號以升冪排序(由小到大)。
Input = DataBase.objects.order_by('-number')
#輸出座號以降冪排序(由大到小)。
這些是大部分查詢資料表很常使用到的功能,我也還在涉略這方面的知識學問,
以上就是我所知道的用法都教授給大家啦!
那今天先到這裡,大家掰掰~
圖片來源:啪沒了